#include <stdio.h>
#include <stdlib.h>
//给你一个整数数组，返回它的某个 非空子数组 在执行一次可选的删除操作后，所能得到的最大元素总和。
//换句话说，你可以从原数组中选出一个子数组，并可以决定要不要从中删除一个元素（只能删一次哦），
//（删除后）子数组中至少应当有一个元素，然后该子数组（剩下）的元素总和是所有子数组之中最大的。
//注意，删除一个元素后，子数组 不能为空。

int maximumSum(int* arr, int arrSize) 
{
    int sum=0,i=0,t=0;
    for(int len=arrSize;len>1;len--)
    {
        int nowork=1;
        for(i=1;i<len;i++)
        {
            if(arr[i-1]>arr[i])
            {
                nowork=0;
                t=arr[i-1];
                arr[i-1]=arr[i];
                arr[i]=t;
            }
        }
        if(nowork) break;
    }
    if(arr[arrSize-1]<=0)
    return arr[arrSize-1];
    else for(i=0;i<arrSize;i++)
    {
        if(arr[i]<=0)
        arr[i]=0;
        sum+=arr[i];
    }
    return sum;
}
int main()
{
    int arr1[4]={1,-2,-2,3};
    int cc=0;
    cc=maximumSum(arr1,4);
    return 0;
}